package 简单.分类讨论;

/**
 * 给你一个整数 n，请你返回一个含 n 个字符的字符串，其中每种字符在该字符串中都恰好出现 奇数次 。
 * 返回的字符串必须只含小写英文字母。如果存在多个满足题目要求的字符串，则返回其中任意一个即可。
 * <p>
 * 来源：力扣（LeetCode）
 * 链接：https://leetcode.cn/problems/generate-a-string-with-characters-that-have-odd-counts
 */
public class 生成每种字符都是奇数个的字符串_1374 {

    public static void main(String[] args) {

    }

    /**
     * n 为奇数时，返回 n 个 a 的字符串
     * n 为偶数时，返回 n-1 个 a 和 一个 b 的字符串
     * <p>
     * 注意:
     * java 11 字符串新方法
     * repeat(int n) 复制n次字符串
     *
     * @param n
     * @return
     */
    public String generateTheString(int n) {
        StringBuilder stringBuilder = new StringBuilder();
        if (n % 2 == 1) {
            for (int i = 0; i < n; i++) {
                stringBuilder.append("a");
            }
        } else {
            for (int i = 0; i < n - 1; i++) {
                stringBuilder.append("a");
            }
            stringBuilder.append("b");
        }
        return stringBuilder.toString();
    }

}
